/*
 * 文件名：SystemService.java
 * 版权：Copyright by will_awoke
 * 描述：
 * 修改人：will_awoke
 * 修改时间：2014-8-18
 * 跟踪单号：
 * 修改单号：
 * 修改内容：
 */

package com.qbgs.rbac.service;

import java.util.List;

import com.qbgs.rbac.bean.SysMenu;


/**
 * 
 * @author will_awoke
 * @version 2014-8-18
 * @see SystemService
 * @since
 */
public interface SystemService
{
    
    /**
     * 登录验证是否存在
     * 
     * @param loginName
     *            用户名
     * @param pw
     *            密码
     * @return true=用户存在 false=不存在
     * @see
     */
    boolean isExists(String loginName, String pw);

    /**
     * 判断当前请求的url是否在用户的可操作权限内 （用于SystemFilter#doFilter拦截鉴权）
     * 
     * @param loginName
     *            当前登录用户
     * @param url
     *            当前请求url
     * @return true=鉴权通过 false=鉴权不通过
     * @see
     */
    boolean isUrlInUserLimit(String loginName, String url);

    /**
     * 查询用户的导航菜单，并处理成easyui Tree需要的json格式
     * 
     * @param loginName
     *            用户登录名
     * @return
     * @see
     */
    List<SysMenu> queryNaviJsonByUser(String loginName);

    /**
     * 查询登录用户某个菜单的所有子按钮权限
     * 
     * @param loginName
     * @param funcUrl
     * @return
     * @see
     */
    List<String> queryButtonsOfFunc(String loginName, String funcUrl);

}
